package com.ztools.common.model.wx.payment;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @Author: seeTools
 * @Date: 2023/6/3  21:27
 * @Version 1.0
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Cart implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 会员ID
     */
    private Long memberId;

    /**
     * 操作时间
     */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date operateTime;

    /**
     * 应收总金额
     */
    @JSONField(format = "#0.00")
    private BigDecimal amount;

    /**
     * 支付金额
     */
    @JSONField(format = "#0.00")
    private BigDecimal payAmount;

    /**
     * 支付积分
     */
    private Integer point;

    /**
     * 券优惠金额
     */
    @JSONField(format = "#0.00")
    private BigDecimal couponAmount;

    /**
     * 支付类型
     */
    private String paymentType;

    /**
     * 支付订单号
     */
    private String paymentNo;

    /**
     * 储值卡Uid
     */
    private String cardUid;

    /**
     * 储值卡编号
     */
    private String cardNo;

    /**
     * 优惠券ids
     */
    private String couponIds;

    /**
     * 优惠券模板ids
     */
    private String templateIds;

    /**
     * 优惠券金额
     */
    @JSONField(format = "#0.00")
    private BigDecimal couponDiscount;


    /**
     * 商品列表
     */
    private List<CartItem> cartList;
}
